package com.example.administrator.touchtest;

import android.content.Context;
import android.util.Log;
import android.view.MotionEvent;
import android.view.View;
import android.widget.FrameLayout;

/**
 * Created by Administrator on 2016/12/1.
 */

public class Layout_1 extends FrameLayout {
    public static final String TAG = Layout_1.class.getSimpleName();
    public Layout_1(Context context) {
        super(context);
    }

    @Override  //触摸分发  触摸事件到底要交给谁处理  view的方法
    /**
     * 绝对不要重写分发方法   返回值表示分发是否成功
     * */
    public boolean dispatchTouchEvent(MotionEvent ev) {
        Log.e(TAG,"dispatchTouchEvent");
        return super.dispatchTouchEvent(ev);
    }

    @Override   //打断分发  viewgroup的方法
    public boolean onInterceptTouchEvent(MotionEvent ev) {
        Log.e(TAG,"onInterceptTouchEvent");
        View view = getChildAt(0);
        if (!view.getClipBounds().contains((int)ev.getX(),(int)ev.getY())) {
            return true;
        }
        return super.onInterceptTouchEvent(ev);
    }

    @Override    //处理触摸事件   返回值表示 处理是否成功——是否有处理这个触摸事件的能力
    //返回值只有在第一次触摸事件（down）中有效. 如果为true则整个触摸事件都交由该view处理
    //view的方法
    public boolean onTouchEvent(MotionEvent event) {
        Log.e(TAG,"onTouchEvent");
        return super.onTouchEvent(event);
    }
}
